package model

type ArrangeRequest struct {
	Timestamp string   `json:"timestamp"`
	Type      string   `json:"type"`
	Users     []string `json:"users"`
}

type ArrangeDetail struct {
	ID             string `json:"id"`
	CreatedTime    int64  `json:"createdTime"`
	Creator        string `json:"creator"`
	LastUpdateTime int64  `json:"lastUpdateTime"`
	LastUpdater    string `json:"lastUpdater"`
	Year           int64  `json:"year"`
	Month          int64  `json:"month"`
	Day            int64  `json:"day"`
	StartTime      string `json:"startTime"`
	EndTime        string `json:"endTime"`
	User           string `json:"user"`
	Type           string `json:"type"`
	WeekDay        int64  `json:"weekDay"`
	LocalDate      string `json:"localDate"`
}

type ArrangeResponse struct {
	Code    int64           `json:"code"`
	Message string          `json:"message"`
	Result  []ArrangeDetail `json:"result"`
}

type ArrangeBatchRequest struct {
	WeekDays []int64 `json:"weekDays"`
	User     string  `json:"user"`
}

type ArrangeBatchResponse struct {
}

type ArrangeThedaySupervisorResponse struct {
	Code    int    `json:"code"`
	Message string `json:"message"`
	Result  []struct {
		Id             string      `json:"id"`
		CreatedTime    int64       `json:"createdTime"`
		Creator        string      `json:"creator"`
		LastUpdateTime int64       `json:"lastUpdateTime"`
		LastUpdater    string      `json:"lastUpdater"`
		Year           int         `json:"year"`
		Month          int         `json:"month"`
		Day            int         `json:"day"`
		StartTime      interface{} `json:"startTime"`
		EndTime        interface{} `json:"endTime"`
		User           string      `json:"user"`
		Type           string      `json:"type"`
		WeekDay        int         `json:"weekDay"`
		LocalDate      struct {
			Year       int    `json:"year"`
			Month      string `json:"month"`
			Chronology struct {
				Id           string `json:"id"`
				CalendarType string `json:"calendarType"`
			} `json:"chronology"`
			Era        string `json:"era"`
			DayOfMonth int    `json:"dayOfMonth"`
			DayOfWeek  string `json:"dayOfWeek"`
			DayOfYear  int    `json:"dayOfYear"`
			LeapYear   bool   `json:"leapYear"`
			MonthValue int    `json:"monthValue"`
		} `json:"localDate"`
		Gender      string  `json:"gender"`
		UserName    string  `json:"userName"`
		TencentID   string  `json:"tencentID"`
		UserId      string  `json:"userId"`
		Level       float64 `json:"level"`
		Status      string  `json:"status"`
		IsConsulted string  `json:"isConsulted"`
	} `json:"result"`
	Count int         `json:"count"`
	Next  interface{} `json:"next"`
}

type ArrangeThedayCounselorResponse struct {
	Code    int    `json:"code"`
	Message string `json:"message"`
	Result  []struct {
		Id             string      `json:"id"`
		CreatedTime    int64       `json:"createdTime"`
		Creator        string      `json:"creator"`
		LastUpdateTime int64       `json:"lastUpdateTime"`
		LastUpdater    string      `json:"lastUpdater"`
		Year           int         `json:"year"`
		Month          int         `json:"month"`
		Day            int         `json:"day"`
		StartTime      interface{} `json:"startTime"`
		EndTime        interface{} `json:"endTime"`
		User           string      `json:"user"`
		Type           string      `json:"type"`
		WeekDay        int         `json:"weekDay"`
		LocalDate      struct {
			Year       int    `json:"year"`
			Month      string `json:"month"`
			Chronology struct {
				Id           string `json:"id"`
				CalendarType string `json:"calendarType"`
			} `json:"chronology"`
			Era        string `json:"era"`
			DayOfMonth int    `json:"dayOfMonth"`
			DayOfWeek  string `json:"dayOfWeek"`
			DayOfYear  int    `json:"dayOfYear"`
			LeapYear   bool   `json:"leapYear"`
			MonthValue int    `json:"monthValue"`
		} `json:"localDate"`
		Gender      string  `json:"gender"`
		UserName    string  `json:"userName"`
		TencentID   string  `json:"tencentID"`
		UserId      string  `json:"userId"`
		Level       float64 `json:"level"`
		Status      string  `json:"status"`
		IsConsulted string  `json:"isConsulted"`
	} `json:"result"`
	Count int         `json:"count"`
	Next  interface{} `json:"next"`
}

type ArrangeThedayDeleteRequest struct {
	ID string `json:"id"`
}

type ArrangeThedayDeleteResponse struct {
	Code    int    `json:"code"`
	Message string `json:"message"`
	Result  string `json:"result"`
}
